home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
newsgroups
/
misc.20010306-20010921
/
000111_fdc@watsun.cc.columbia.edu_Thu May 10 12:59:52 EDT 2001.msg
< prev
next >
Wrap
Text File
|
2020-01-01
|
6KB
|
129 lines
Article: 12402 of comp.protocols.kermit.misc
Path: newsmaster.cc.columbia.edu!watsun.cc.columbia.edu!fdc
From: fdc@watsun.cc.columbia.edu (Frank da Cruz)
Newsgroups: comp.protocols.kermit.misc,comp.unix.programmer
Subject: Re: Need help with Mac OS X 10.0.2
Date: 9 May 2001 15:35:13 GMT
Organization: Columbia University
Lines: 112
Message-ID: <9dbo3h$2ve$1@newsmaster.cc.columbia.edu>
References: <9d9395$rt3@watsun.cc.columbia.edu> <9dbmos$kke$1@jake.esu.edu>
NNTP-Posting-Host: watsun.cc.columbia.edu
X-Trace: newsmaster.cc.columbia.edu 989422513 3054 128.59.39.2 (9 May 2001 15:35:13 GMT)
X-Complaints-To: postmaster@columbia.edu
NNTP-Posting-Date: 9 May 2001 15:35:13 GMT
Xref: newsmaster.cc.columbia.edu comp.protocols.kermit.misc:12402 comp.unix.programmer:128452
In article <9dbmos$kke$1@jake.esu.edu>,
David H. Hutchens <hutchens@cs.millersville.edu> wrote:
: I've done further investigation.
:
Sorry to include your entire posting in this reply, but I'm adding
comp.unix.programmer and this way they'll see it too. If I knew of a
Mac OS X newsgroup, I'd include that too. (If anybody knows of such
a group, please repost this thread there and/or let me know.)
: The original "SET FLOW NONE" was in effect in the settings I was using
: on the public beta. So I assume that RTS/CTS was issuing the warning
: in the public beta too.
:
: I recompiled kermit and tried that version... No difference at all.
:
: I am able to do connections, uploading, and downloading as long as I
: set the buffer size to 512. So I have a "usable" system.
:
: I get the warning when I dial. And I get about 7 or 8 system beeps
: when I type the first character of my user name to the remote system
: login prompt.
:
: As to the bug. I can't let you connect to my system. The reason I'm
: using kermit is that I don't otherwise have an internet connection
: from home.
:
: However, I'm a decent programmer.... I have been programming in C
: since 1980. I have a Ph.D. in CS. I checked the kermit source and
: found that the file ckutio.c seems to be key. It includes sys/ioctl.h
: which includes sys/ttycom.h which contains the definitions of the CTS
: stuff, in particular: TIOCM_CTS. I verified that my build (macosx10c)
: does, in fact, include the ioctl.h file by typing garbage next to the
: include line and seeing that the compiler choked. All this seems
: normal. I can send you the .h files if you wish. They seem to be
: standard BSD4.4. I can also send the man pages. Again they are
: basically BSD4.4. The main line of interest is:
:
: ttycom.h:#define TIOCM_CTS 0040 /* clear to send */
:
: My best guess is that the current device driver does not respond, as
: kermit expects, with CTS asserted before dialing. I don't know what
: it might do after dialing, but it appears from kermit's response that
: kermit isn't using it (otherwise bigger buffers ought to work).
:
: I got the Apple Internal Modem AT command documentation from Apple's
: web site. I checked using modem AT commands that the modem is set to
: use RTS/CTS and that it is actually making the connection at about
: 28800 (next one down actually 26400?, the time I checked) with error
: correction and compression enabled. That is what I'd expect since the
: modem I was calling is a 28K V.34 modem.
:
: So some possibilities:
:
: 1) The device driver and/or modem waits for a connection before
: passing CTS through and I need to get kermit to ignore the setting
: when dialing and use it later. I'm not sure where exactly to try to
: make that change. Or for that matter, if kermit is already trying that
: as the warning suggests.
:
: 2) The device driver and/or modem never asserts CTS so there is a bug
: without any easy workaround and I'll just have to file a bug report
: with Apple and wait. Not the worst of problems since I have a limping
: version that I can use.
:
: Your advice?
:
The only way to solve this is to have somebody who knows something about
Mac OS X internals sit down and "try this, try that" with the source code:
. Are we using the right API for modem control and hardware flow control?
Note that many UNIX-based OS's maintain scads of APIs for "compatibility",
but some of them might be nonfunctional.
. Study the twisted tangle of #ifdefs in ckutio.c carefully, particularly
around any routine that uses modem signals: tthflow() and tthang().
Notice all the horrible tricks that have to be used on this and that
platform to make this stuff work. Try adjusting the macosx10 makefile
entry's CFLAGS to select different tricks.
Having an internal modem doesn't help matters either, since there's no way
to monitor the modem signals independently of the software -- modem lights,
breakout box, etc.
>From my experience with other UNIX OS's, the only other suggestion that
comes to mind is that maybe there are different drivers for the modem
(and therefore different names for the same device) -- one that has modem
control, one that doesn't, and maybe a special one that does hardware
flow control. If so, maybe if you try another driver everything will
just work (I might have suggested this before).
The 4.4BSD path through the code words fine for FreeBSD, NetBSD, OpenBSD,
and BSDI, with a few minor wrinkles, such the following which I discovered
just a few days ago (from the C-Kermit edit history):
While helping a user I discovered that C-Kermit on NetBSD always
fails to hangup by dropping DTR; the tcsetattr() call always fails
with EINVAL. It doesn't like an argument of B0. The same code works
fine in FreeBSD. Found out that the NetBSD tty device driver code is
broken (for some reason the B0 hangup code is commented out). The
workaround is to use ioctl() with TIOCCDTR and TIOCSDTR -- Yet
Another Hanging Up API. Added code for this to tthang(), tested in
NetBSD (which uses it) and FreeBSD (which doesn't). On BSD44 and
POSIX systems, the use of this code can be forced by defining
USE_TIOCSDTR. ckutio.c, 28 Apr 2001.
This is the kind of thing that keeps us busy, making Kermit do simple things
like hanging up modems on all different OS's and OS releases.
If you find anything, please report back quickly, since C-Kermit 7.1 needs
to be released soon.
- Frank